Computer systems typically include hardware that allows communication over wired or wireless networks. These networks allow computer users to communicate with each other or with other software applications. In many cases, the data is transmitted between a server and a client computer system. This communication may be performed asynchronously (as with email), or synchronously (as with chat). Synchronous communication between computer systems allows data to be streamed between computer systems. This streaming data may include video, audio, text or other types of data.